home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 013 / hd273.arc / HDTEST.DOC < prev    next >
Encoding:
Text File  |  1986-11-10  |  48.0 KB  |  990 lines

  1.           
  2.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  3.           ______________________________________________________________________
  4.           
  5.           
  6.                                   USER-SUPPORTED SOFTWARE
  7.                                   _______________________
  8.           
  9.           Much of the software which is available for your computer is produced
  10.           and sold on the assumption that you are a crook, who will take any
  11.           available opportunity to cheat its creators and vendors out of their
  12.           rightful reward. It is copy-protected within an inch of its (and your
  13.           computer's) life and is still priced at a level which guarantees its
  14.           producers a profit even if four or five illegal copies are made for
  15.           each one sold. User-supported software is different. You may have got
  16.           a copy of this package free from a friend or a bulletin board or (for
  17.           a nominal fee) from a users' group or software library. In any case,
  18.           you have a perfectly legal copy. You are encouraged to make as many
  19.           copies of the package as you like and to distribute them to all your
  20.           friends. If, after trying the program out, you find that it is useful
  21.           and want to keep it, you should register your copy by sending the
  22.           registration fee ($30.00,) together with the completed registration
  23.           form, to the address on the form. Only your conscience can make you do
  24.                                                                      ____       
  25.           this, but bear in mind that the distributors of "user-supported"
  26.           software make the assumption that you are honest and willing to pay a
  27.           reasonable price for a useful program, while many software vendors
  28.           would apparently rather believe you are a crook, and decide who you
  29.           would rather prove right. As a bonus, registered users will get a copy
  30.           of V3.10 of HDTEST, which includes a number of significant
  31.           enhancements over V2.73, and will be entitled to support and help with
  32.           HDTEST-related problems (including telephone support) for a year from
  33.           the date of registration.
  34.           
  35.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  36.           ______________________________________________________________________
  37.           
  38.           
  39.           
  40.                                        INTRODUCTION
  41.                                        ____________
  42.           
  43.           HDTEST was written to allow comprehensive Read/Write testing of hard
  44.           disks on IBM PCs, XTs, ATs, and "true" compatibles. Although many
  45.           programs, including IBM's diagnostics, allow "surface scanning" and
  46.           seek testing of hard disks, none that are available to the average
  47.           user test whether the whole disk can retain the data that is or will
  48.           be written to it. HDTEST's principal "claim to fame" is the ability
  49.           thoroughly to test the surface of a hard disk which contains data
  50.           while preserving the data (although data loss is unavoidable if a
  51.           _________________________                                        
  52.           cluster which is in use has become unreadable).  HDTEST tests the disk
  53.                                                ____                             
  54.           much more thoroughly than programs such as DFixer, Mace, and Norton's
  55.           DT. Mace and DT, like many public domain "disk test" programs, simply
  56.           read every cluster on the disk and report on any errors encountered.
  57.           DFixer does better, writing 4 test patterns to every free cluster and
  58.           checking that they can be read back correctly, but it makes no attempt
  59.           to test clusters that are already in use - the very ones which contain
  60.           your precious data!
  61.           
  62.           HDTEST writes 20 different test patterns to every cluster on the disk
  63.                                                       _____                    
  64.           and checks that each pattern can be read back correctly, while
  65.           preserving the contents of the clusters that already contain data.
  66.           HDTEST can also (on most systems) detect errors which are minor enough
  67.           to be correctable (and corrected) by the disk controller's own "error-
  68.           correcting code" (ECC).  These errors are normally totally invisible
  69.           to programs running under DOS and will not usually be picked up by
  70.           other disk test utilities.  They may, however, be early signs of a
  71.           problem that will become significant later, and HDTEST consequently
  72.           marks the offending cluster as bad. As long as HDTEST can read the
  73.           data from a flaky cluster correctly once (and it tries quite hard) it
  74.           will be able to save the file of which that cluster is a part intact,
  75.                                                                         ______ 
  76.           while marking the cluster so that DOS does not try to use it again.
  77.           The program was designed to minimize the likelihood of user error
  78.           causing data loss on a good (or slightly bad) disk, and to be easy to
  79.           use - it could not be designed to be fast, since multiple bit patterns
  80.           have to be written to and read from each cluster, and this takes time.
  81.           The program can be used to test single and double-sided 8- and 9-
  82.           sector floppy disks (if you have plenty of patience!), but not (at
  83.                                            ______                    ___    
  84.           present) AT-format 1.2Mb floppies.
  85.           
  86.           HDTEST's companion program, HDCHEK, simply examines the logical
  87.           structure of the device and reports on what it finds. It does not
  88.           write to the disk, and is provided principally to allow a quick and
  89.           easy, but fairly reliable, check on the compatibility between HDTEST
  90.           and a given software/hardware configuration. In general, if HDCHEK
  91.                                                        ___________          
  92.           runs successfully on a system, then HDTEST can be expected to do so,
  93.           although the latter program does require more memory.
  94.           
  95.           The HDTEST package is distributed as "User-supported Software". If you
  96.           find it useful, you are asked to become a registered user by sending a
  97.           completed copy of the Registration Form (which is included in this
  98.           documentation), together with a check or money order for $30.00
  99.           ($40.00 Canadian, $25.00 Sterling) to me at the address which appears
  100.           on the form (and on the program's copyright screen). I will send you a
  101.           personalised copy of the latest, considerably enhanced, version of the
  102.           HDTEST package (V3.10), and register you for a year's support.
  103.           
  104.           
  105.                                           Page 2
  106.           
  107.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  108.           ______________________________________________________________________
  109.           
  110.           
  111.           Registration entitles you to be notified of upgrades, bug fixes, newly
  112.           discovered incompatibilities, etc., and to ask for (and get) necessary
  113.           help in adapting the program to work on your hardware. I cannot guar-
  114.           antee to make HDTEST work with every possible combination of hardware
  115.           and software, but I will promise to try to solve problems as they come
  116.           up, and I will return your registration fee if I cannot support your
  117.           system.  Support will be available TO REGISTERED USERS ONLY by mail,
  118.                                              ________________________         
  119.           BIXmail, Compuserve EMail and, for an experimental period, telephone.
  120.           Please also bear in mind that my willingness and ability to continue
  121.           to support and enhance these programs will be directly dependent on
  122.           your willingness to pay the registration fee and (to some extent)
  123.           inversely dependent on the number of questions I get that could be
  124.           answered by reading the documentation(!).
  125.           
  126.           The HD programs were written principally in C, compiled by the
  127.           Microsoft C compiler (Version 4.00) using its "small" memory model,
  128.           and linked with code from the distributed Microsoft C object libraries
  129.           using the Microsoft LINK program (Version 3.51).  Additional assembly
  130.           language routines were assembled by the Microsoft MASM Macro Assembler
  131.           (Version 4.00). Portions of the distributed program are consequently
  132.           Copyright (C) by Microsoft Corp., 1985, 1986. All rights reserved.
  133.           These portions are used under the terms of a license from Microsoft
  134.           Corp.
  135.           
  136.           The HD programs were written with care and have been extensively
  137.           tested on a number of different systems.  I cannot, however, give any
  138.           guarantee as to their performance on a specific system, nor can I
  139.           accept liability for any actual or consequential loss resulting from
  140.           their use.  The programs may only be used and/or copied in their
  141.           original form. Unauthorised modifications and/or the use of all or
  142.           part of the programs in other software, commercial or otherwise, are
  143.           strictly prohibited.
  144.           
  145.           
  146.                                       GETTING STARTED
  147.                                       _______________
  148.           
  149.           This section gives step by step instructions for running HDCHEK and
  150.           HDTEST on the C: drive of a standard IBM PC, XT, or 100% compatible.
  151.           The following sections go into much more detail about some of the
  152.           program's features and options, and should help to explain and let you
  153.           deal with any problems which you may encounter.
  154.           
  155.           1) If you obtained a copy of the HDTEST package on a floppy disk, use
  156.           the DISKCOPY program to make a duplicate of it, put the original away
  157.           in a safe place, and use the duplicate as your working disk. If you
  158.           downloaded the package to your hard disk, make sure that you have a
  159.           backup copy on floppy disk or tape before proceeeding.
  160.           
  161.           2) Make sure that you have current backups of all the files on the
  162.           disk on which you plan to run HDTEST. This is particularly important
  163.           when running the program for the first time on a new system.
  164.           
  165.           3) Run DOS's CHKDSK program on drive C: and correct any errors
  166.           reported by it before proceeding further.
  167.           
  168.           4) Make the drive and/or directory which contains HDCHEK.EXE and
  169.           HDTEST.EXE your current drive and/or directory.
  170.           
  171.           
  172.                                           Page 3
  173.           
  174.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  175.           ______________________________________________________________________
  176.           
  177.           
  178.           
  179.           5) Insert a formatted, non-write-protected floppy disk in drive A. A
  180.           log file called HDTEST.LOG will be written to this disk - any other
  181.           files on it will be undisturbed.
  182.           
  183.           6) Give the command: "HDCHEK C:". After a certain amount of disk
  184.           activity has taken place, and certainly within a minute or two, your
  185.           screen should look like one of the examples given in the Appendix. If
  186.           any errors are reported, DO NOT PROCEED until you have read the rest
  187.                                    ______________                             
  188.           of the documentation and/or are sure you know what is going on.
  189.           
  190.           7) If HDCHEK reported no errors, give the command "HDTEST C: A:".
  191.              ____________________________                                  
  192.           After some disk activity, the program will prompt for replies to three
  193.           questions - press <Return> in response to each prompt. The program
  194.           will report its progress to the screen and will record any problems
  195.           encountered in the log file on the floppy disk. Depending on the size
  196.           of your DOS partition and the access time of the disk, a complete run
  197.           of HDTEST will take between 2 and 5 hours. Your intervention will only
  198.                                               _____                             
  199.           be required if a bad cluster is found in a "hidden", "system", or
  200.           write-protected file, when you will be asked to approve remapping;
  201.           otherwise, bad clusters will be automatically remapped. HDTEST can be
  202.           aborted at any time by pressing <Esc> and responding to the "Are you
  203.           sure...." prompt by pressing <Return>.
  204.           
  205.           8) If HDTEST finishes testing without finding any bad clusters, it
  206.           will simply record that fact and the finishing time in the log file
  207.           and return to the DOS prompt. Otherwise, when read/write testing has
  208.           been completed, you will be prompted for permission to complete the
  209.           remapping process by updating the disk FATs and Directories.  Pressing
  210.           <Return> will allow this to take place, and you will then be returned
  211.           to the DOS prompt.
  212.           
  213.           9) If HDTEST reported and remapped some bad clusters, see the section
  214.           on "Dealing with bad clusters" later in this documentation.
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.           
  239.           
  240.                                           Page 4
  241.           
  242.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  243.           ______________________________________________________________________
  244.           
  245.           
  246.            
  247.                              HARDWARE & SOFTWARE REQUIREMENTS
  248.                              ________________________________
  249.           
  250.           HDTEST and HDCHEK make a number of assumptions about the environment
  251.           in which they are operating. They will, generally speaking, abort with
  252.           an informative error message if they find one of these assumptions to
  253.           be untrue! They require MS/PC-DOS 2.x or above and (for HDTEST) up to
  254.           about 256 Kb of free memory (the exact amount required depends on the
  255.           characteristics of the device being tested) to run - the presence of
  256.           more memory may (slightly) increase HDTEST's speed when testing
  257.           devices with large cluster sizes. The device to be tested must have
  258.           been initialized by FDISK and FORMATted by the DOS utility; only the
  259.           DOS partition of a multi-partition disk will be tested.  For this
  260.           reason, if you wish to test a new hard disk which is to contain
  261.                                  ____                                    
  262.           multiple partitions, you should first configure it as a single DOS
  263.           partition, test it in that configuration, and then reconfigure it to
  264.           its final form. Note that, under these circumstances, HDTEST can only
  265.           test the disk - its marking and/or remapping of bad sectors does not
  266.           ____                                                                
  267.           survive re-partitioning.  The BIOS handler for interrupt 13 must be
  268.           capable of handling (at least) normal disk reads and writes (sub-
  269.           functions 2 and 3) in a way that is compatible with that documented
  270.           for the XT disk adapter in IBM's technical documentation. This should
  271.           be no problem for most disk systems on IBM PCs and most compatibles.
  272.           HDTEST may not, however, be usable with non-bootable hard disks and/or
  273.                  ___                                                            
  274.           with hard disks which require special device drivers to be installed.
  275.           
  276.           If run under DOS 3.0 or above, HDTEST attempts to locate and use the
  277.           ROM BIOS INT 13 entry point, rather than the normal INT 13 vector
  278.           (which DOS 3.x intercepts and interferes with). For this purpose, the
  279.           program assumes that, if a ROM is present at absolute address C8000H,
  280.                                 ___________________                            
  281.           it contains the hard disk BIOS and has initialization code starting at
  282.                                          ___                                    
  283.           offset 3. This assumption is true for all hard disks which "plug in"
  284.           to the IBM PC and XT. It may not be true for all clones which come
  285.           with hard disks installed, although it is likely to be true for most
  286.           of them. The AT and some of its clones have no ROM at all at this
  287.           location, which is OK, too (but see para 5 in the "Limitations and
  288.           Restrictions" section). Problems (up to and including system halts)
  289.           may occur if there is a ROM at C8000H but it does not control the hard
  290.                              __                             ___                 
  291.           disk, and are almost certain if the initialization code does not start
  292.           at offset 3. If you have any problems running HDCHEK and HDTEST on
  293.           such systems, try invoking the programs with the /D flag (see below).
  294.           
  295.           Note that, since HDTEST remaps bad clusters to free space, there is
  296.           not much point in running it on a disk which has none (as shown by
  297.           DIR or CHKDSK), since it will abort immediately if it finds a bad
  298.           cluster.  Unless you have a really flaky disk, however, you should not
  299.           need more than a couple of hundred Kb free to remap any reasonably
  300.           probable number of bad clusters.
  301.           
  302.           ANSI.SYS should be installed on those systems (including IBM PCs)
  303.           which do not support ANSI screen I/O in Video BIOS - nothing terrible
  304.           will happen if ANSI.SYS is not installed, but the screen display will
  305.           be very strange (!!). I will consider distributing a version which
  306.           uses the IBM Video BIOS as well if there seems to be a demand for it.
  307.  
  308.  
  309.  
  310.           
  311.           
  312.                                           Page 5
  313.           
  314.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  315.           ______________________________________________________________________
  316.           
  317.           
  318.           
  319.                                LIMITATIONS AND RESTRICTIONS
  320.                                ____________________________
  321.           
  322.           The current version of HDTEST has a few limitations, most of which
  323.           result from the way data is stored internally by the program. None of
  324.           them are "etched in stone", although some could only be avoided at the
  325.           cost of slowing down what is already far from a fast process. The
  326.           known limitations are as follows:
  327.           
  328.           1) Maximum number of clusters per disk = 24,000 (this number is
  329.           approximate, because it depends on dynamic memory allocation). This
  330.           limit may be increased to 32,768 in a subsequent version of the
  331.           program.
  332.           
  333.           2) Maximum total number of directory and subdirectory entries (files
  334.           plus subdirectories) = 3,640. I expect this restriction to be removed
  335.           in a subsequent version of the program.
  336.           
  337.           3) Maximum cluster size = 65,535 bytes. I do not believe that a DOS
  338.           disk can ever have clusters larger than 64 Kb, but my limit is one
  339.           less than that and may, since sector and cluster sizes tend to run in
  340.           powers of 2, effectively limit cluster size to 32 Kb - this should be
  341.           enough for most people!.
  342.           
  343.           4) Because of certain limitations of the chips used to support direct
  344.           memory access (DMA, the method used to transfer data from disk to
  345.           memory and vice versa), HDTEST may be unable to use free memory
  346.           efficiently when cluster sizes are large. This can result in
  347.           "Insufficient Memory" or "Memory Allocation" errors, even on systems
  348.           with more than the minimum 256 Kb of free memory prescribed above. The
  349.           only cure for this is to free up (or buy!) more memory (remove
  350.           RAMdisks, remove resident software, etc.).
  351.           
  352.           5) This version of HDTEST will run on ATs and most AT clones, but will
  353.           not be able to detect corrected ECC errors when run on these machines
  354.           - a warning message will be displayed when the program initializes
  355.           itself if corrected ECC errors are not being detected.  The program
  356.           will also not detect corrected ECC errors when invoked with the /D
  357.           flag (under DOS 3.0 or above).
  358.           
  359.           
  360.                                    RUNNING THE PROGRAMS  
  361.                                    ____________________  
  362.           
  363.           Always run HDCHEK on any new hardware/software configuration before
  364.           you attempt to run HDTEST (for the first time). The latter program has
  365.           been written as conservatively as possible, but it impossible to
  366.           predict the behavior of every conceivable combination of hardware and
  367.           operating system when dealing with a program which bypasses most of
  368.           the controls which normally protect the user from destroying his
  369.           world. HDCHEK is invoked with the command line:
  370.           
  371.                           HDCHEK device [/D]
  372.           
  373.           "device" is the device to be tested (e.g. A:, B:, etc. - the colons
  374.           are permitted but not required). The optional flag has no effect under
  375.                             ___                                                 
  376.           DOS 2.x.  Under DOS 3.0 or above, it forces HDCHEK to use the existing
  377.           INT 13 vector (which it always does under DOS 2.x), and prevents the
  378.           
  379.           
  380.                                           Page 6
  381.           
  382.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  383.           ______________________________________________________________________
  384.           
  385.           
  386.           program from trying to determine the ROM BIOS entry point; the flag
  387.           should be used if you know that your system's fixed disk BIOS does not
  388.           follow IBM's "rules" or if the program crashes the system when invoked
  389.           without it.
  390.           
  391.           After a short delay, during most of which the specified device will be
  392.           active, a description of the device's logical structure will be
  393.           displayed.  After a further delay and more disk activity, a message
  394.           will be printed giving the number of files and subdirectories found on
  395.           the disk, and the program will exit back to DOS. Errors and problems,
  396.           if any, will be reported in some detail. A number of example screen
  397.           displays and log files produced by running HDCHEK and HDTEST on
  398.           different systems will be found in the Appendix at the end of this
  399.           documentation.
  400.           
  401.           Always run the DOS CHKDSK program immediately before running HDTEST on
  402.           a disk. If CHKDSK reports any problems, its /F option (or other means)
  403.           should be used to correct them before HDTEST is run.
  404.                                          ____________________ 
  405.           
  406.           HDTEST is invoked with the command line:
  407.           
  408.                      HDTEST device1 [device2] [/D] [/N] [/P] [/Snnnnn]
  409.           
  410.           "device1" is the device to be tested, as for HDCHEK. "device2" (which,
  411.           if present, must be different from "device1") is the name of a device
  412.           on which a log file (called HDTEST.LOG) is to be written. If "device2"
  413.           is not specified, errors are reported to the console terminal and
  414.                                                                         ___
  415.           should not be redirected.
  416.           ________________________ 
  417.           
  418.           The /D(OS) flag has the same meaning and effect that it does for
  419.           HDCHEK.
  420.           
  421.           The /P(rint) flag causes the log file to be directed to the PRN device
  422.           (normally LPT1), and overrides any "device2" specification.
  423.           
  424.           The /N(o Query) flag disables the individual prompts for confirmation
  425.           which the program normally issues before remapping clusters which are
  426.           marked as "Reserved" or which are part of a file which is marked as
  427.           "System", "Hidden", or "Readonly".  The /N flag does not prevent the
  428.                                                                ___            
  429.           program from prompting for confirmation before updating the disk.
  430.           
  431.           The /S(tart) flag causes HDTEST to start testing occupied clusters at
  432.                                                            ________            
  433.           cluster number nnnnn (expressed as a decimal number). There must be no
  434.           space between the "S" and the starting cluster number. This will
  435.           mainly be useful when a previous run of HDTEST had to be aborted, when
  436.           it allows you to start where you left off. Note that, in order to be
  437.           sure that data is not remapped to a bad area, HDTEST always tests all 
  438.                                                                ______       ___ 
  439.           empty clusters before starting to test occupied clusters. For this
  440.           reason, using the /S flag will not result in a significant time saving
  441.           if your disk is nearly empty, and will make the most difference on a
  442.           full, or nearly full disk.
  443.           
  444.           After displaying its copyright message, HDTEST reads the FATs and
  445.           scans the root directory and all subdirectory trees of the specified
  446.           device before initiating a short dialogue. All questions are of the
  447.           "Yes/No" type and should be answered by typing "Y" or "N" (case does
  448.           not matter) and pressing the <Return> key.  Pressing the <Return> key
  449.           
  450.           
  451.                                           Page 7
  452.           
  453.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  454.           ______________________________________________________________________
  455.           
  456.           
  457.           alone is equivalent to giving the default response (which appears in
  458.           square brackets at the end of each prompt).  HDTEST then proceeds to
  459.           test the specified device. By default, the DOS area (boot sector,
  460.           FATs, and root directory) is not routinely subjected to Read/Write
  461.           testing, since failures in this area usually make themselves apparent
  462.           fairly rapidly. The user can, however, choose to run the full tests on
  463.           the DOS area too, or to limit testing to read and seek tests only over
  464.           the whole partition.
  465.           
  466.           In testing a block (sector or cluster), HDTEST first reads it (retry-
  467.           ing, if necessary, up to five times) and then does the longest
  468.           possible seek away from it before attempting to read it again. The
  469.           program then sequentially writes 20 different bit patterns to the
  470.           block and checks that each one can be read correctly before rewriting
  471.           the original contents of the block (and checking once more to ensure
  472.           that it has been restored correctly). Errors that occur at any point
  473.           in this process are reported and (if the block is in the data area -
  474.           errors in the DOS area are always treated as fatal) the block is
  475.           remapped. If an error is detected in a "Reserved" cluster or in one
  476.           that is part of a file which is marked as "System", "Hidden", or
  477.           "Readonly", the user is normally asked for confirmation before the
  478.           cluster is remapped, otherwise it is assumed that remapping is
  479.           desirable.
  480.           
  481.           HDTEST keeps a copy of the FAT and a map of the device's directory
  482.           structure in memory. A bad cluster is remapped by transferring its
  483.           contents to a free cluster and changing all necessary FAT and
  484.           directory entries so that the pointer chain which maintains the
  485.           structure of the file of which the bad cluster formed a part remains
  486.           valid. The bad cluster's FAT entry is altered to mark it as bad. The
  487.           disk's FATs and directories are not altered until the whole disk has
  488.           ______                                                              
  489.           been scanned, and then only after the user has confirmed that it is OK
  490.           to proceed. This means that a power failure and/or an inadvertent
  491.           power-off which occurs while the program is running will cause the
  492.           loss of, at most, one cluster of data and (unless you are very unlucky
  493.                                                                     ____        
  494.           and it happens after you have confirmed that you want a damaged data
  495.           area to be remapped and while this is being done) of no FAT or root
  496.           directory information. If a power failure and/or power-off occurs
  497.           while a cluster which contains the directory information of a
  498.           subdirectory is being tested, part or all of that subdirectory will,
  499.           of course, become inaccessible through DOS, although the data in it
  500.           will remain on the disk and be potentially recoverable with the aid of
  501.           (e.g.) the Norton Utilities (TM). You can safely abort the testing
  502.           process part way through by pressing the <Esc> key, with no risk of
  503.           leaving a partially updated FAT or directory. If you do abort the
  504.           program in this way, you will be given the option of updating the
  505.           disk, so that bad clusters which were detected before <Esc> was
  506.           pressed can be remapped.
  507.           
  508.           Errors which occur in the program's initialization phase cause it to
  509.           abort with an error message and (sometimes) a hexadecimal error code.
  510.           The meaning of the error code is context-dependent. Errors detected
  511.           during read-write testing only cause the program to abort if they
  512.           occur during testing of the DOS area, or if remapping is impossible
  513.           (only likely to happen if the disk is full). In any event, a
  514.           description of the error is written to the log file (if any) or to the
  515.           screen. This specifies the cluster or (for the DOS area) sector
  516.           
  517.           
  518.                                           Page 8
  519.           
  520.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  521.           ______________________________________________________________________
  522.           
  523.           
  524.           number and the name of the affected file (if any), and defines the
  525.           type of error wich occurred.
  526.           
  527.           HDTEST takes a very long time to run to completion because of the
  528.                          ____                                              
  529.           large number of reads and writes it does for each cluster. A typical
  530.           time for an XT disk (10 Mb) would be 2 hrs; full disk testing on a 30
  531.           Mb AT Plus takes at least 4 hrs.
  532.           
  533.           
  534.                                  DEALING WITH BAD CLUSTERS
  535.                                  _________________________
  536.           
  537.           It is, unfortunately, not unusual for a new hard disk to have a small, 
  538.                                                                           ______ 
  539.           constant, number of bad clusters. IBM's quality control standards
  540.           ________                                                         
  541.           allow, for example, 5% of the surface area of a disk to be bad (!).
  542.           These bad clusters, which correspond to imperfections in the magnetic
  543.           coating on the disk, will normally be detected and marked by the DOS
  544.           FORMAT program and HDTEST will report them as "already marked as bad".
  545.           This should not be regarded as evidence of any real problem with the
  546.           disk, although some suppliers (not including IBM) will replace such
  547.                                          ___                                 
  548.           disks under warranty if pressed to do so.  It is also not unusual for
  549.           a disk to develop a few more defects as it ages. When these do
  550.                               ___                                       
  551.           develop, they are also usually constant in size and position, and will
  552.           be reported as "already marked as bad" by HDTEST on runs subsequent to
  553.           that during which they are first found. The occasional appearance (and
  554.                                                       __________                
  555.           subsequent persistence) of a new bad cluster is, therefore, not
  556.           necessarily evidence of serious trouble developing.  However, if more
  557.           than one or two new bad clusters are reported by HDTEST, and
  558.           especially if two consecutive runs of HDTEST report different bad
  559.                                                               _________    
  560.           clusters, there is a good chance that the hard disk or controller is
  561.           developing a serious problem - it should be backed up immediately and
  562.           sent for repair at the earliest opportunity.  New bad clusters in the
  563.           data area are automatically mapped out by HDTEST, and no further
  564.           action is necessary.  Bad sectors in the DOS area can only be handled
  565.           by backing up the disk (if this is still possible), reconfiguring it
  566.           with FDISK so that the DOS partition starts above the bad area, re-
  567.           FORMATting it, and restoring all of the old files to the new partition
  568.           (which will unavoidably be a little smaller than the old).  If
  569.           absolute sector zero (track 0, Head 0, sector 1) becomes bad, the disk
  570.           must be replaced.
  571.           
  572.           
  573.                             BUGS AND OTHER UNPLEASANT SUBJECTS
  574.                             __________________________________
  575.           
  576.           Although, like all programmers, I sometimes like to think that my
  577.           product is perfect, it is possible that there are a few bugs lurking
  578.           in the depths of the program, and likely that some combination of
  579.           software and hardware exists which HDTEST cannot figure out and/or
  580.           cope with. If you think you have found a bug and/or if you cannot get
  581.           either of the programs to work on your system, do the following:
  582.           
  583.           1) Reread this documentation! Make sure that you are doing exactly
  584.           what the documentation says to do. Make sure (if you are testing a
  585.           drive with removable media) that the media is not write-protected.
  586.           
  587.           2) Boot your system from a "virgin" DOS disk - preferably a copy of
  588.           your DOS distribution disk - and try again to run the HD programs. If
  589.           they run in this environment but not in your normal DOS environment,
  590.           
  591.           
  592.                                           Page 9
  593.           
  594.           Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  595.           ______________________________________________________________________
  596.           
  597.           
  598.           try reconstructing the system under which they failed by adding things
  599.           one by one until the problems recur and let me know about the
  600.           incompatibility.
  601.           
  602.           3) If the above approaches do not help, or if HDCHEK runs but HDTEST
  603.           bombs (the reverse should never happen), send me as detailed a
  604.           description of the problem as possible and (IF you are a registered
  605.                                                       _______________________
  606.           user) I will do my best to diagnose and fix it. A bug report should
  607.           ____                                                               
  608.           always include a full description of the system being used, as well as
  609.           ______                                                                
  610.           the output from a run of HDCHEK.
  611.                               CHANGES FROM PREVIOUS VERSIONS
  612.                               ______________________________
  613.           
  614.           The first version released (other than beta-test versions) was V2.60.
  615.           
  616.           
  617.           Version 2.73 (this version) -
  618.           
  619.           The following (visible) changes have been made in HDCHEK:
  620.           
  621.           1) Minor bug in V2.60 (which resulted in a failed directory scan if
  622.           HDCHEK was run on a write-protected floppy) fixed (at V2.71).
  623.           
  624.           
  625.           The following (visible) changes have been made in HDTEST:
  626.           
  627.           1) Bug in V2.60 (which could cause bad termination of the program and
  628.           possible subdirectory inconsistencies if a sector which was not in use
  629.           was found to be bad) fixed (at V2.70).
  630.           
  631.           2) Bug in V2.70 (which caused the program to enter a terminal input
  632.           loop if ANSI.SYS was not loaded and <Esc> was entered to abort it)
  633.           fixed (at V2.73).
  634.           
  635.           3) Internal changes made to avoid interference with expanded memory
  636.           device handlers (at V2.72).
  637.           
  638.           4) Ability to update disk after program terminated by user (typing
  639.           <Esc>) added (at V2.70).
  640.           
  641.           5) Ability to start checking occupied clusters at a given cluster
  642.           number added (at V2.70).
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.           
  660.           
  661.                                          Page 10
  662.      
  663.      Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  664.      ______________________________________________________________________
  665.      
  666.      
  667.  
  668.                       APPENDIX - EXAMPLE PROGRAM RUNS
  669.                       _______________________________
  670.  
  671.      Screen display from successful run of HDCHEK on 14 Mb DOS partition of
  672.      20 Mb hard disk:
  673.  
  674.              HDCHEK V2.73 - Copyright (1986) Peter R. Fletcher
  675.              =================================================
  676.  
  677. This program is part of the HDTEST package, which is distributed as "User
  678. Supported Software". The package may be copied and distributed freely by
  679. individual users, provided that no charge is made for copying and/or supplying
  680. it. User groups and/or libraries may charge a nominal (<= $5.00) fee for
  681. supplying a copy of the package on a floppy disk.
  682.  
  683. Portions of this program Copyright (C) Microsoft Corp., 1984, 1985. All rights
  684. reserved. Used under Licence.
  685.  
  686. Device C: is the DOS partition of a hard disk.
  687. It contains 29104 sectors.
  688. Total partition size is approximately 14 Mb.
  689. It starts at absolute sector 8364 on the disk.
  690. There are 4 heads and 17 sectors/track.
  691. Sector size is 512 bytes.
  692. Each (12 bit) FAT occupies 11 sectors.
  693. The Root Directory occupies 32 sectors.
  694. The data area starts at DOS sector 55, and contains 3631 clusters, each
  695. consisting of 8 sectors.
  696. The directory scan was successful; a total of 1018 files and subdirectories
  697. was found.
  698.  
  699.  
  700.  
  701.      Screen display from successful run of HDCHEK on DSDD 9-sector floppy disk:
  702.  
  703.              HDCHEK V2.73 - Copyright (1986) Peter R. Fletcher
  704.              =================================================
  705.  
  706. This program is part of the HDTEST package, which is distributed as "User
  707. Supported Software". The package may be copied and distributed freely by
  708. individual users, provided that no charge is made for copying and/or supplying
  709. it. User groups and/or libraries may charge a nominal (<= $5.00) fee for
  710. supplying a copy of the package on a floppy disk.
  711.  
  712. Portions of this program Copyright (C) Microsoft Corp., 1984, 1985. All rights
  713. reserved. Used under Licence.
  714.  
  715. Device A: is a floppy disk.
  716. The disk contains 720 sectors.
  717. There are 2 heads and 9 sectors/track.
  718. Sector size is 512 bytes.
  719. Each (12 bit) FAT occupies 3 sectors.
  720. The Root Directory occupies 7 sectors.
  721. The data area starts at DOS sector 12, and contains 354 clusters, each
  722. consisting of 2 sectors.
  723. The directory scan was successful; a total of 38 files and subdirectories
  724. was found.
  725.      
  726.      
  727.                                     Page 11
  728.      
  729.      Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  730.      ______________________________________________________________________
  731.      
  732.      
  733.  
  734.      Screen display from run of HDCHEK on 14 Mb DOS partition - directory
  735.      structure bad or unrecognizable:
  736.  
  737.              HDCHEK V2.73 - Copyright (1986) Peter R. Fletcher
  738.              =================================================
  739.  
  740. This program is part of the HDTEST package, which is distributed as "User
  741. Supported Software". The package may be copied and distributed freely by
  742. individual users, provided that no charge is made for copying and/or supplying
  743. it. User groups and/or libraries may charge a nominal (<= $5.00) fee for
  744. supplying a copy of the package on a floppy disk.
  745.  
  746. Portions of this program Copyright (C) Microsoft Corp., 1984, 1985. All rights
  747. reserved. Used under Licence.
  748.  
  749. Device C: is the DOS partition of a hard disk.
  750. It contains 29104 sectors.
  751. Total partition size is approximately 14 Mb.
  752. It starts at absolute sector 8364 on the disk.
  753. There are 4 heads and 17 sectors/track.
  754. Sector size is 512 bytes.
  755. Each (12 bit) FAT occupies 11 sectors.
  756. The Root Directory occupies 32 sectors.
  757. The data area starts at DOS sector 55, and contains 3631 clusters, each
  758. consisting of 8 sectors.
  759. The preliminary directory scan failed.
  760.  
  761.  
  762.      Screen display from run of HDCHEK on 14 Mb DOS partition - FATs not
  763.      identical:
  764.  
  765.              HDCHEK V2.73 - Copyright (1986) Peter R. Fletcher
  766.              =================================================
  767.  
  768. This program is part of the HDTEST package, which is distributed as "User
  769. Supported Software". The package may be copied and distributed freely by
  770. individual users, provided that no charge is made for copying and/or supplying
  771. it. User groups and/or libraries may charge a nominal (<= $5.00) fee for
  772. supplying a copy of the package on a floppy disk.
  773.  
  774. Portions of this program Copyright (C) Microsoft Corp., 1984, 1985. All rights
  775. reserved. Used under Licence.
  776.  
  777. FATS are different
  778. FAT discrepancy at byte 20F - FAT 1 has FF; FAT2 has F8
  779. Continue comparison (Y/N)? [Y]: n     {user input}
  780.                                 _                 
  781.  
  782. Device C: is the DOS partition of a hard disk.
  783. It contains 29104 sectors.
  784. Total partition size is approximately 14 Mb.
  785. It starts at absolute sector 8364 on the disk.
  786. There are 4 heads and 17 sectors/track.
  787. Sector size is 512 bytes.
  788. Each (12 bit) FAT occupies 11 sectors.
  789. The Root Directory occupies 32 sectors.
  790. The data area starts at DOS sector 55, and contains 3631 clusters, each
  791.      
  792.      
  793.                                     Page 12
  794.      
  795.      Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  796.      ______________________________________________________________________
  797.      
  798.      
  799. consisting of 8 sectors.
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.      
  857.      
  858.                                     Page 13
  859.      
  860.      Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  861.      ______________________________________________________________________
  862.      
  863.      
  864.  
  865.  
  866.      Screen display from run of HDCHEK - program unable to deduce disk
  867.      structure - disk not recognizable as a DOS device:
  868.  
  869.              HDCHEK V2.73 - Copyright (1986) Peter R. Fletcher
  870.              =================================================
  871.  
  872. This program is part of the HDTEST package, which is distributed as "User
  873. Supported Software". The package may be copied and distributed freely by
  874. individual users, provided that no charge is made for copying and/or supplying
  875. it. User groups and/or libraries may charge a nominal (<= $5.00) fee for
  876. supplying a copy of the package on a floppy disk.
  877.  
  878. Portions of this program Copyright (C) Microsoft Corp., 1984, 1985. All rights
  879. reserved. Used under Licence.
  880.  
  881. Unrecognised media descriptor byte! - see error code
  882. Error Code = F1      {F1 is not a media descriptor byte used by DOS}
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.      
  922.      
  923.                                     Page 14
  924.      
  925.      Documentation for HDTEST V2.73          Copyright 1986, P. R. Fletcher
  926.      ______________________________________________________________________
  927.      
  928.      
  929.      
  930.      
  931.      Log file from successful run of HDTEST on 14 Mb DOS partition of 20 Mb hard
  932.      disk:
  933.      
  934.      HDTEST Log File - Tue Jul 08 11:44:52 1986
  935.      Testing Device C:
  936.      
  937.      No bad clusters found - HDTEST finished.
  938.      Tue Jul 08 14:10:41 1986
  939.      
  940.      
  941.      Log file from run of HDTEST on 14 Mb DOS partition - one bad cluster
  942.      detected and remapped:
  943.      
  944.      HDTEST Log File - Tue Jul 08 11:44:52 1986
  945.      Testing Device C:
  946.      
  947.      Read/Write error at cluster number 275!!
  948.      Uncorrected ECC error occurred during pattern read/writes
  949.      This error is recoverable (no data loss has occurred).
  950.      Bad cluster is in file \MYFILES\DATA5\FFT1234.DAT
  951.      
  952.      1 bad clusters found and remapped - HDTEST finished.
  953.      Tue Jul 08 14:01:04 1986
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.      
  987.      
  988.                                     Page 15
  989.      
  990.      
  991.                             REGISTRATION FORM - HDTEST V 2.73
  992.                             _________________________________
  993.      
  994.      Please complete this form and return it with a check or money order (no
  995.      cash, please) for $30.00 ($40.00 Canadian, $25.00 Sterling) to:
  996.      
  997.                      Peter R. Fletcher
  998.                      220 Ballard Drive
  999.                      West Hartford
  1000.                      CT 06119
  1001.                      U.S.A.
  1002.      
  1003.      None of the information on this form will be passed on to any other
  1004.      individual or commercial organization. Use the back of the form for
  1005.      comments or additional space.
  1006.      
  1007.      --------------------------------------------------------------------------
  1008.      
  1009.      This information is required to process your Registration:
  1010.      
  1011.      Last Name:____________________________  Other Names:______________________
  1012.      
  1013.      Address:______________________________  Town/City:________________________
  1014.      
  1015.      State:_____________  Post Code:____________  Telephone:_________________
  1016.                                                            (evenings/weekends)
  1017.      
  1018.      I understand that this software is supplied without warranty, express or
  1019.      implied, and agree not to hold its author liable for any direct or
  1020.      consequential loss arising out of my use of it.
  1021.      
  1022.      Signature:______________________________
  1023.      
  1024.      -------------------------------------------------------------------------
  1025.      
  1026.      You are requested, but not required, also to answer the following
  1027.      questions:
  1028.      
  1029.      On What type(s) of computer are you using HDTEST? _________________________
  1030.      
  1031.      CPU (8088, 8086, etc.)? __________   Amount of RAM (kB)? ____________
  1032.      
  1033.      Type & Size of Hard Disk(s)? ____________________________________
  1034.      
  1035.      Make and Type of Hard Disk Controller(s)? ______________________________
  1036.      
  1037.      Do you own a Modem?                                             Y  N
  1038.      
  1039.      Are you a member of BIX?   Y  N        Compuserve?              Y  N
  1040.      
  1041.      Do you own or have access to a Cauzin Softstrip Reader          Y  N
  1042.      
  1043.      Did you think that the $30.00 registration fee for this program was:
  1044.      
  1045.      Very Good Value?              About Right?             Excessively High?
  1046.      
  1047.      
  1048.      Are there any other utility programs that you would like to see made
  1049.      available as "User Supported Software"? What sort of programs?
  1050.      
  1051.      
  1052.      
  1053.